//using System.Collections;
//using System.Collections.Generic;
//using UnityEditor;
//using UnityEditor.TerrainTools;
//using UnityEditor.UIElements;
//using UnityEngine;
//using UnityEngine.UIElements;

//[CustomEditor(typeof(Test))]
//public class TestEditor : EditorWindow
//{
//    // Start is called before the first frame update\

//    SerializedProperty intValProp;
//    SerializedProperty strValProp;
//    SerializedProperty floatValProp;
//    SerializedProperty boolValProp;
//    SerializedProperty colorValProp;
//    SerializedProperty uiTypeValProp;

//    public void OnEnable()
//    {
//        //serializedObject.Update();
//    }

//    private void CreateGUI()
//    {
        
//    }

    

//    private void UpdateUI(VisualElement root, UIType uiType)
//    {

//        List<VisualElement> elementsToRemove = new List<VisualElement>();
//        foreach (var child in root.Children())
//        {
//            if (child is PropertyField)
//            {
//                elementsToRemove.Add(child);
//            }
//        }
//        Debug.Log("remove ele is " + elementsToRemove);
//        foreach (var element in elementsToRemove)
//        {
//            root.Remove(element);
//        }

//        // ����ѡ���UIType��ʾ��Ӧ�������ֶ�
//        switch (uiType)
//        {
//            case UIType.INT:
//                root.Add(new PropertyField(intValProp));
//                break;
//            case UIType.STRING:
//                root.Add(new PropertyField(strValProp));
//                break;
//            case UIType.BOOLEAN:
//                root.Add(new PropertyField(boolValProp));
//                break;
//            case UIType.FLOAT:
//                root.Add(new PropertyField(floatValProp));
//                break;
//            case UIType.COLOR:
//                root.Add(new PropertyField(colorValProp));
//                break;
//            case UIType.NONE:
//            default:
//                // Do nothing
//                break;
//        }
//        serializedObject.ApplyModifiedProperties();
//        root.MarkDirtyRepaint();

//    }

//    private void RepaintInspector()
//    {
//        Debug.Log("���»���");
//        Repaint();
//        EditorApplication.update -= RepaintInspector;
//    }
//}
